
//1.0定义常量key ,将来操作的localStorage中的数据都以这个key来作为表示
export const KEY = 'goodsdata';

export var valueObj = {goodsid:0,count:0};

//实现数据的增加
export function setItem(value){
    //获取json格式
    var jsonString = localStorage.getItem(KEY,value);
    //如果为空返回一个空数组json
    jsonString = jsonString || '[]';
    //转成json
    var arr = JSON.parse(jsonString);
    //将value追加进入arr
    arr.push(value);
    //将arr 转换成json 字符串保存起来
    localStorage.setItem(KEY,JSON.stringify(arr));
}
//获取数据
export function getItem(value){
    //从localStorage中取出
    var jsonString = localStorage.getItem(KEY,value);
    //如果为空准备一个空的json数组
    jsonString = jsonString || '[]';
    //转成json字符串
    return JSON.parse(jsonString);
}

//移除数据 goodsID :商品id
export function removeItem(goodsid){
    var arr = getItem();
    //查找arr中的goodsid 和传入的参数goodsid一致的数据全部移除
    for(var i=arr.length-1;i>=0;i--){
        if(arr[i].goodsid == goodsid){
            arr.splice(i,1);
        }
    }

    //将最新的arr保存回localStorage中
    localStorage.setItem(KEY,JSON.stringify(arr));
}



export function getgoodsObj(){

    var arr  = getItem();

    var resObj = {};
    for(var i = 0;i<arr.length;i++){
        var item  = arr[i];
        if(!resObj[item.goodsid]){
            resObj[item.goodsid] = item.count;
        }else{
            var count  = resObj[item.goodsid];
            resObj[item.goodsid] = count +item.count;
        }
    }
    return resObj;
}

//obj 的格式:{goodsid:87,type:'add'}
export function updateData(obj){
    var arr  = getItem();

    var count = 1;
    if(obj.type ==  'add'){
        //加
        arr.push({goodsid:obj.goodsid,count:count});
    }else{
        //减
        for(var i=0;i<arr.length;i++){
            //如果这个对象中的count值等于1,则删除这个对象,否则将这个对象的count减1后保存回去
            if(arr[i].goodsid == obj.goodsid){
                if(arr[i].count>1){
                    arr[i].count = arr[i].count -1;
                    break;
                }else{
                    arr.splice(i,1);
                    break;
                }
            }
        }
    }

    //将最新的arr保存回localStorage中
    localStorage.setItem(KEY,JSON.stringify(arr));
}


//根据goodsid 移除